
<!doctype html>
<html>
<head>
    <meta charset="utf-8">
    <title>登录</title>
    <meta content="width=device-width,initial-scale=1.0,maximum-scale=1.0,user-scalable=0" name="viewport"/>
    <meta content="yes" name="apple-mobile-web-app-capable"/>
    <meta content="black" name="apple-mobile-web-app-status-bar-style"/>
    <meta content="telephone=no" name="format-detection"/>

    <link href="/public/static/home/themes/css/login.css" rel="stylesheet">

</head>

<body>

<div class="login-logo circle text-center" style="background-image:url({$setting['val']})"></div>
    <form name="forms" onSubmit="return checkreg()" action="homepage.html" method="post" class="login-cont">
        <div style="color:#999;font-size:16px;text-align:center;">
            首次登录使用身份证号，密码为身份证后六位
        </div>
        <ul>
            <li><input type="text" id="idcard" placeholder="请输入您的身份证号" value=""></li>
            <li>
                <span id="box"><input type="password"  name="password" placeholder="请输入您的密码" id="password" value=""/></span>
                <span id="click"><a href="javascript:ps()" class="iconfont icon-biyan"></a></span>
            </li>
        </ul>
        <a href="javascript:;"  class="button text-center block" id="login">登 录</a>
    </form>
<script src="/public/static/admin/layui/layui.js"></script>
<script type="text/javascript">
    layui.use('upload', function() { //独立版的layer无需执行这一句
        var $ = layui.jquery, layer = layui.layer,upload = layui.upload; //独立版的layer无需执行这一句
        //身份证验证
        function validateIdCard(idCard){
            //15位和18位身份证号码的正则表达式
            var regIdCard=/^(^[1-9]\d{7}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}$)|(^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])((\d{4})|\d{3}[Xx])$)$/;

            //如果通过该验证，说明身份证格式正确，但准确性还需计算
            if(regIdCard.test(idCard)){
                if(idCard.length==18){
                    var idCardWi=new Array( 7, 9, 10, 5, 8, 4, 2, 1, 6, 3, 7, 9, 10, 5, 8, 4, 2 ); //将前17位加权因子保存在数组里
                    var idCardY=new Array( 1, 0, 10, 9, 8, 7, 6, 5, 4, 3, 2 ); //这是除以11后，可能产生的11位余数、验证码，也保存成数组
                    var idCardWiSum=0; //用来保存前17位各自乖以加权因子后的总和
                    for(var i=0;i<17;i++){
                        idCardWiSum+=idCard.substring(i,i+1)*idCardWi[i];
                    }
                    var idCardMod=idCardWiSum%11;//计算出校验码所在数组的位置
                    var idCardLast=idCard.substring(17);//得到最后一位身份证号码
                    //如果等于2，则说明校验码是10，身份证号码最后一位应该是X
                    if(idCardMod==2){
                        if(idCardLast=="X"||idCardLast=="x"){

                            layer.closeAll();
                            // layer.open({
                            // 	content: '身份证通过验证啦！',
                            // 	skin: 'msg',
                            // 	time: 2
                            // });
                            return true;
                        }else{
                            layer.open({
                                content: '身份证号码错误！',
                                skin: 'msg',
                                time: 2
                            });

                            return false;

                        }
                    }else{
                        //用计算出的验证码与最后一位身份证号码匹配，如果一致，说明通过，否则是无效的身份证号码
                        if(idCardLast==idCardY[idCardMod]){
                            // layer.open({
                            // 	content: '身份证通过验证啦！',
                            // 	skin: 'msg',
                            // 	time: 2
                            // });
                            return true;
                        }else{

                            layer.open({
                                content: '身份证号码错误！',
                                skin: 'msg',
                                time: 2
                            });
                            return false;

                        }
                    }
                }
            }else{

                layer.open({
                    content: '身份证格式不正确',
                    skin: 'msg',
                    time: 2
                });
                return false;
            }
        }
        //登录
        $("#login").click(function () {
            //判断手机号码是否有误
            if($("#idcoard").val() == ""){
                $("#idcoard").focus();
                layer.msg("请输入身份证号", {time: 2000});
                return false;
            }else{
                console.log($("#idcard").val());
                if(!validateIdCard($("#idcard").val())){
                    $("#idcoard").focus();
                    layer.msg("请输入正确的身份证号", {time: 2000,shade:0.5});
                    return false;
                }
            }
            //判断密码是否为空
            if($("#password").val() == ""){
                $("#password").focus();
                layer.msg("请输入密码", {time: 2000});
                return false;
            }
            $.post("{:url('Login/toLogin')}",{'idcard':$("#idcard").val(),password:$("#password").val(),},function(data){
                layer.msg(data.msg,{time:2000,shade:0.5},function(){
                    if(data.url){
                        window.location.href = data.url;
                    }
                });
            });
        });

    });


    function ps(){
        if (this.forms.password.type="password")
            box.innerHTML="<input type=\"text\" name=\"password\" size=\"20\" id='password' placeholder='请输入密码' value="+this.forms.password.value+">";
        click.innerHTML="<a href=\"javascript:txt()\" class=\"iconfont icon-open-eye\"></a>"
    }
    function txt(){
        if (this.forms.password.type="text")
            box.innerHTML="<input type=\"password\" name=\"password\" size=\"20\" id='password' placeholder='请输入密码' value="+this.forms.password.value+">";
        click.innerHTML="<a href=\"javascript:ps()\" class=\"iconfont icon-biyan\"></a>"
    }

</script>

</body>
</html>
